package br.com.localab.reserva.controlador;

import java.io.Serializable;
import java.util.List;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;

import org.hibernate.Session;

import br.com.localab.fachada.Fachada;
import br.com.localab.reserva.modelo.Reserva;
import br.com.localab.util.autenticar.FacesContextUtil;

@ManagedBean
@ViewScoped
public class ListarReservaMB implements Serializable{

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	private List<Reserva> lista;
	private List<Reserva> filteredReservas;
	private Fachada fachada;
	private Session s;
	private Reserva reserva;
	
	public ListarReservaMB() {
		// TODO Auto-generated constructor stub
        s = FacesContextUtil.getRequestSession();
		fachada = new Fachada(s);
		this.lista =  fachada.reservaListar();
	}
	
	public void removerReserva(Reserva reserva){
		s = FacesContextUtil.getRequestSession();
		fachada = new Fachada(s);
		String mensagem = fachada.reservaRemover(reserva);
		FacesContextUtil.setMessageInformacao("Info", mensagem);
	}
	
	public void editarReserva(Reserva reserva){
		s = FacesContextUtil.getRequestSession();
		fachada = new Fachada(s);
		String mensagem = fachada.reservaLiberar(reserva);
		FacesContextUtil.setMessageInformacao("Info", mensagem);
	}
	
	public List<Reserva> getLista() {
		return lista;
	}

	public void setLista(List<Reserva> lista) {
		this.lista = lista;
	}

	public Reserva getReserva() {
		return reserva;
	}

	public void setReserva(Reserva reserva) {
		this.reserva = reserva;
	}

	public List<Reserva> getFilteredReservas() {
		return filteredReservas;
	}

	public void setFilteredReservas(List<Reserva> filteredReservas) {
		this.filteredReservas = filteredReservas;
	}

	
	
	
	
}
